$(function () {
   
 
  // 切换登录/注册
  $(document).on("click",".guideLogin .guideName",function(){
    var checkName = $(this).text();
    $(".guideLogin .guideName").removeClass("checkNode");
    $(this).addClass("checkNode");
    // 重置表单
    $('#loginForm')[0].reset();
    $('#registrationForm')[0].reset();
    $('.error').css('display','none');
    $('input').removeClass('error-border');
    if(checkName == "登录"){
      $(".registerMod").css("display","none");
      $(".loggerMod").css("display","");
    }else if(checkName == "注册"){
      $(".registerMod").css("display","");
      $(".loggerMod").css("display","none");
    }
  })

  // 登录----------------判断条件信息不全
  $(document).ready(function() {
      $('#loginForm').submit(function(event) {
          event.preventDefault(); // 阻止表单的默认提交行为
          let isValid = true;
          // 验证用户名
          const username2 = $('#username2').val().trim();
          const usernameRegex = /^[a-zA-Z0-9_]{3,20}$/;             // 判断条件需用户名/邮箱/电话号三重判断（未完全）
          if (!username2 || !usernameRegex.test(username2)) {
              $('#username2Error').show();
              $('#username2').addClass('error-border');
              isValid = false;
          } else {
              $('#username2Error').hide();
              $('#username2').removeClass('error-border').addClass('success-border');
          }

          // 验证密码
          const password2 = $('#password2').val();
          if (password2.length < 6) {
              $('#password2Error').show();
              $('#password2').addClass('error-border');
              isValid = false;
          } else {
              $('#password2Error').hide();
              $('#password2').removeClass('error-border').addClass('success-border');
          }

          // 如果所有验证通过
          if (isValid) {
              // 这里可以添加Ajax提交
            //     $.ajax({
            //         url: 'login.php', // 服务器端的处理脚本URL
            //         type: 'POST', // 请求方法，POST或GET根据实际情况选择
            //         data: {username: username, password: password}, // 要发送的数据对象，键值对形式，与PHP中的$_POST['username']相对应。
            //         success: function(response) { // 请求成功后的回调函数，response是服务器返回的数据。
            //             alert('登录成功！'); // 根据服务器返回的数据进行相应的处理。例如：如果response是'success'，则表示登录成功。
            //         },
            //         error: function() { // 请求失败后的回调函数。例如网络错误等。
            //             alert('登录失败，请重试！'); // 处理错误情况。例如：服务器未响应等。
            //         }
            //     });
              alert('登录成功！'+username2);
              
              // 重置表单
              this.reset();
              $('input').removeClass('success-border');
          }


          // var username = $('#username2').val();
          // var password = $('#password2').val();
          // if (username === "" || password === "") {
          //     alert("请填写用户名和密码！"); // 前端验证提示信息
          //     return false; // 如果验证失败，阻止表单提交并返回false。
          // } else {
          //     // 这里可以添加发送数据到服务器的代码，例如使用AJAX。例如：
          //     $.ajax({
          //         url: 'login.php', // 服务器端的处理脚本URL
          //         type: 'POST', // 请求方法，POST或GET根据实际情况选择
          //         data: {username: username, password: password}, // 要发送的数据对象，键值对形式，与PHP中的$_POST['username']相对应。
          //         success: function(response) { // 请求成功后的回调函数，response是服务器返回的数据。
          //             alert('登录成功！'); // 根据服务器返回的数据进行相应的处理。例如：如果response是'success'，则表示登录成功。
          //         },
          //         error: function() { // 请求失败后的回调函数。例如网络错误等。
          //             alert('登录失败，请重试！'); // 处理错误情况。例如：服务器未响应等。
          //         }
          //     });
          // }
      });
      // 实时输入验证
      $('.loginMod>input').on('blur', function() {
          const id = $(this).attr('id');
          
          switch(id) {
              case 'username2':
                  const username2 = $(this).val().trim();
                  const usernameRegex = /^[a-zA-Z0-9_]{3,20}$/;
                  if (!username2 || !usernameRegex.test(username2)) {
                      $('#username2Error').show();
                      $(this).addClass('error-border');
                  } else {
                      $('#username2Error').hide();
                      $(this).removeClass('error-border').addClass('success-border');
                  }
                  break;
                  
              case 'password2':
                  const password2 = $(this).val();
                  if (password2.length < 6) {
                      $('#password2Error').show();
                      $(this).addClass('error-border');
                  } else {
                      $('#password2Error').hide();
                      $(this).removeClass('error-border').addClass('success-border');
                  }
                  break;
                  
          }

      });

  });

  //  注册----------------判断条件信息不全
  $(document).ready(function() {
    $('#registrationForm').submit(function(event) {
        event.preventDefault(); // 阻止表单默认提交行为
        let isValid = true;
        // var username = $('#username2').val();
        // var phone = $('#phone').val();
        // var password = $('#password2').val();
        // var confirmPassword = $('#confirmPassword').val();
        // var captcha = $('#captcha').val();
        // var message = $('#message'); // 获取消息显示区域元素
        // message.text(''); // 清空之前的消息
        // var valid = true; // 假设所有字段都有效，除非发现无效的字段
        // 验证单位名称
        const unitname = $('#unitname').val().trim();
        const unitnameRegex = /^[a-zA-Z0-9_]{3,20}$/;
        if (!unitname || !unitnameRegex.test(unitname)) {
            $('#unitnameError').show();
            $('#unitname').addClass('error-border');
            isValid = false;
        } else {
            $('#unitnameError').hide();
            $('#unitname').removeClass('error-border').addClass('success-border');
        }

        // 验证用户名
        const username = $('#username').val().trim();
        const usernameRegex = /^[a-zA-Z0-9_]{3,20}$/;
        if (!username || !usernameRegex.test(username)) {
            $('#usernameError').show();
            $('#username').addClass('error-border');
            isValid = false;
        } else {
            $('#usernameError').hide();
            $('#username').removeClass('error-border').addClass('success-border');
        }
        
        // 验证手机号
        const mobile = $('#mobile').val();
        if(!/^1[3456789]\d{9}$/.test(mobile)) {
            $('#mobileError').show();
            $('#mobile').addClass('error-border');
        } else{
            $('#mobileError').hide();
            $('#mobile').removeClass('error-border').addClass('success-border');
        }
       
        // 邮箱验证
            // $('#email').on('blur', function() {
            //     const regex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
            //     isValid.email = regex.test($(this).val());
            //     toggleError('emailError', isValid.email);
            //     checkFormValid();
            // });

        // 验证密码
        const password = $('#password').val();
        if (password.length < 6) {
            $('#passwordError').show();
            $('#password').addClass('error-border');
            isValid = false;
        } else {
            $('#passwordError').hide();
            $('#password').removeClass('error-border').addClass('success-border');
        }

        // 验证确认密码
        const confirmPassword = $('#confirmPassword').val();
        if (password !== confirmPassword) {
            $('#confirmPasswordError').show();
            $('#confirmPassword').addClass('error-border');
            isValid = false;
        } else {
            $('#confirmPasswordError').hide();
            $('#confirmPassword').removeClass('error-border').addClass('success-border');
        }

        // 验证码
        // const captcha = $('#captcha').val();

        // 如果所有验证通过
        if (isValid) {
            // 这里可以添加Ajax提交
            
            alert('注册成功！'+username);
            
            // 重置表单
            this.reset();
            $('input').removeClass('success-border');
        }
        // if (password !== confirmPassword) { // 检查密码和确认密码是否匹配。
        //     message.text('密码和确认密码不匹配！'); // 如果不匹配，显示错误消息。
        //     valid = false; // 设置有效标志为false。
        // } else if (password.length < 6) { // 检查密码长度。
        //     message.text('密码长度至少为6个字符！'); // 如果太短，显示错误消息。
        //     valid = false; // 设置有效标志为false。
        // } else { // 所有检查通过，可以提交表单。这里仅为示例，实际应用中应通过AJAX提交到服务器。

        // }
      });
      // 实时输入验证
      $('.registMod>input').on('blur', function() {
          const id = $(this).attr('id');
          
          switch(id) {
              case 'unitname':
                const unitname = $(this).val().trim();
                const unitnameRegex = /^[a-zA-Z0-9_]{3,20}$/;
                if (!unitname || !unitnameRegex.test(unitname)) {
                    $('#unitnameError').show();
                    $(this).addClass('error-border');
                    isValid = false;
                } else {
                    $('#unitnameError').hide();
                    $(this).removeClass('error-border').addClass('success-border');
                }
                  break;

              case 'username':
                  const username = $(this).val().trim();
                  const usernameRegex = /^[a-zA-Z0-9_]{3,20}$/;
                  if (!username || !usernameRegex.test(username)) {
                      $('#usernameError').show();
                      $(this).addClass('error-border');
                  } else {
                      $('#usernameError').hide();
                      $(this).removeClass('error-border').addClass('success-border');
                  }
                  break;

              case 'mobile':
              const mobile = $(this).val();
              if(!/^1[3456789]\d{9}$/.test(mobile)) {
                  $('#mobileError').show();
                  $(this).addClass('error-border');
              } else{
                  $('#mobileError').hide();
                  $(this).removeClass('error-border').addClass('success-border');
              }
                  
              // case 'email':
              //     const email = $(this).val().trim();
              //     const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
              //     if (!email || !emailRegex.test(email)) {
              //         $('#emailError').show();
              //         $(this).addClass('error-border');
              //     } else {
              //         $('#emailError').hide();
              //         $(this).removeClass('error-border').addClass('success-border');
              //     }
              //     break;
                  
              case 'password':
                  const password = $(this).val();
                  if (password.length < 6) {
                      $('#passwordError').show();
                      $(this).addClass('error-border');
                  } else {
                      $('#passwordError').hide();
                      $(this).removeClass('error-border').addClass('success-border');
                  }
                  break;
                  
              case 'confirmPassword':
                  const confirmPassword = $(this).val();
                  const originalPassword = $('#password').val();
                  if (confirmPassword !== originalPassword) {
                      $('#confirmPasswordError').show();
                      $(this).addClass('error-border');
                  } else {
                      $('#confirmPasswordError').hide();
                      $(this).removeClass('error-border').addClass('success-border');
                  }
                  break;

            //   case 'captcha':
            //   const captcha = $(this).val();
            //   break;
          }

      });
});

  
})



